Describing Lambda Terms in Context Unification
نویسندگان
چکیده
The constraint language for lambda structures (CLLS) is a description language for lambda terms. CLLS provides parallelism constraints to talk about the tree structure of lambda terms, and lambda binding constraints to specify variable binding. Parallelism constraints alone have the same expressiveness as context unification. In this paper, we show that lambda binding constraints can also be expressed in context unification when permitting tree regular constraints.
منابع مشابه
Nominal Narrowing
Nominal unification is a generalisation of first-order unification that takes α-equivalence into account. In this paper, we study nominal unification in the context of equational theories. We introduce nominal narrowing and design a general nominal E-unification procedure, which is sound and complete for a wide class of equational theories. We give examples of application. 1998 ACM Subject Clas...
متن کاملNominal Anti-Unification
Equation solving between nominal terms has been investigated by several authors, who designed and analyzed algorithms for nominal unification [3, 4, 15, 26], nominal matching [5], equivariant unification [6], permissive nominal unification [8]. However, in contrast to unification, its dual problem, anti-unification, has not been studied for nominal terms previously. In [18], it is referred to a...
متن کاملA treatment of higher-order features in logic programming
The logic programming paradigm provides the basis for a new intensional view of higherorder notions. This view is realized primarily by employing the terms of a typed lambda calculus as representational devices and by using a richer form of unification for probing their structures. These additions have important meta-programming applications but they also pose non-trivial implementation problem...
متن کاملTowards Correctness of Program Transformations Through Unification and Critical Pair Computation
Correctness of program transformations in extended lambda calculi with a contextual semantics is usually based on reasoning about the operational semantics which is a rewrite semantics. A successful approach to proving correctness is the combination of a context lemma with the computation of overlaps between program transformations and the reduction rules, and then of so-called complete sets of...
متن کاملLambda Unification
We give a formal description of an algorithm for lambda unification. The input to the algorithm consists of two terms t and s of lambda logic. The purpose of the algorithm is to find (sometimes) a substitution σ such that tσ = sσ is provable in lambda logic. In general such unifiers are not unique. Lambda logic itself is defined in [2]. We prove some basic metatheorems about lambda unification,...
متن کامل